npm脚本执行多个任务

如果遇到一个类似的需求,比如执行npm publish命令前想先升级下项目的版本,基础操作是在shell中输入两次命令分别为npm run version和npm run publish,但是有没有更简单的方法呢?请看下面的内容:

一. 并行or继发
npm 脚本里面需要执行多个任务,那么需要明确它们的执行顺序。

  1. 并行执行(即同时的平行执行),可以使用&符号;
  2. 继发执行(即只有前一个任务成功,才执行下一个任务),可以使用&&符号。
例子:
"test2": "node build/version.js && webpack --config build/webpack.prod.config.js"
此时输入npm run test2就会先执行version任务,然后在执行后面的项目打包任务。

二. 钩子

npm 脚本有pre和post两个钩子。举例来说,build脚本命令的钩子就是prebuild和postbuild。

用户执行npm run build的时候,会自动按照下面的顺序执行。

npm run prebuild && npm run build && npm run postbuild

三. 其他
可以再了解下concurrently,这里不再讲述。

参考:http://www.ruanyifeng.com/blo...


webgiser
27 声望1 粉丝

vv